[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
chsize() Changes File Size
#include <io.h>
int chsize(handle,size);
int handle;
long size;
chsize() changes the size of the file associated with 'handle'. In
order for the change to take place, the file must have been opened
with write permission. The file can then be made larger or smaller,
depending on the value of 'size' in relation to the original size of
the file. If chsize() makes the file larger, it is padded with null
characters ('\0'). If it is made smaller, it is truncated and all
data past the new end-of-file indicator is lost.
Returns: 0 on success. -1 is returned on failure, and 'errno'
is set to either
EACCES Permission denied, or
EBADF Bad file number.
-------------------------------- Example ---------------------------------
The following statements create a file with write-permission then
extend its size to 1024 bytes.
#include <stdio.h> /* for printf */
#include <sys\stat.h>
#include <io.h> /* for creatnew */
main()
{
int handle;
int result;
long size = 1024L;
if ((handle = creat("newfile.dat",S_IREAD|S_IWRITE)) == -1)
printf("couldn't create NEWFILE\n");
else {
printf("NEWFILE created\n");
if ((result = chsize(handle,size)) != 0)
printf("unable to change file size\n");
else
printf("file size changed to %ld\n",size);
close(handle);
}
}
See Also:
creat()
fopen()
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson